The present invention generally relates to printed circuit boards, and, more particularly, to a method and apparatus for automatically programming a machine for dispensing paste on a printed circuit board so that a ball grid array may be attached thereto.
Paste dispensing machines are well-known in the art of printed circuit board design and assembly. More particularly, after the assembly of a printed circuit board, the board is tested so that any defective components residing on the board may be replaced in a process called reworking. During the reworking process, the defective component(s) identified during the testing process is removed from the printed circuit board and a new, defect-free component is substituted in its place. Specifically, the defect-free component is attached to the printed circuit using a process that involves soldering the defect-free component to the printed circuit board at the location where the defective component was previously positioned. Before attaching the defect-free component, a solder paste is applied to a set of pads residing on the printed circuit board. A set of input/output pins disposed on the defect-free component that align with the set of pads disposed on the printed circuit board (when the component is positioned properly) are placed in contact with the paste-laden pads and the paste causes the pads and input/output pins to stick to one another. A heating process is then used to melt the solder paste thereby forming a strong metallic bond between the pads and input/output pins causing the defect-free component to become attached to the printed circuit board. Although for most printed circuit board components the process of applying the solder paste to the appropriate pads of the printed circuit board is not particularly challenging, applying paste to the set of pads required to attach a ball-grid array component can be especially tedious and time-consuming.
More particularly, the input/output pins of a ball-grid array component are arranged in a grid-like pattern and may range from a few hundred to over a thousand. In addition, the input/output pins may be separated by distances as small as twenty mils. Thus, the corresponding pads of a printed circuit board that are arranged to accommodate the input/output pins of the ball-grid array are similarly disposed, i.e., in a grid-like pattern, separated by very small distances. As a result, a paste-dispensing machine must be used to achieve the precision necessary to apply paste to each pad individually. However, conventional paste dispensing machines, such as the CAM/ALOT-1818, must be manually programmed with information regarding the location of each pad to which paste shall be applied. Specifically, conventional paste dispensing machines include a table on which a printed circuit board may be disposed and a gantry having a track disposed therein. A set of motors that are controlled by a DOS based personal computer cause a dispensing needle mounted in the gantry track to move from side to side and further cause the gantry to move back and forth. Thus, the dispensing needle is moveable in both the x and y directions, relative to the table, and may be properly positioned to dispense the solder paste onto the pads of the printed circuit board. Further, the gantry and the dispensing needle are configured to follow the movement of a mouse or trackball associated with the paste dispensing machine. A camera extending from the gantry is directed at the table and transmits a view of a printed circuit board disposed on the table to a monitor that is also coupled to the paste dispensing machine. A machine operator views the printed circuit board via the monitor and uses the mouse or trackball to direct the movement of the gantry and thus the dispensing needle and to position the needle at each pad that requires paste. The camera may include a set of cross hairs that are viewable on the monitor that the machine operator may use to position the needle directly over the center of each pad. Upon moving the needle into the proper position, i.e., so that it is positioned above the center of a pad, the machine operator clicks the mouse or trackball causing a set of coordinates associated with the position of the dispensing needle to be stored in a memory device associated with the paste dispensing machine. This process of moving the gantry to position the dispensing needle over a pad and clicking/storing the positional coordinates is repeated for each of the set of pads that will be used to attach the ball-grid array component to the printed circuit board and is referred to as manually programming the paste dispensing machine. When the coordinates associated with each of the pads corresponding to the input/output pins of the ball-grid array component have been stored as data in a memory accessible to the computer, the paste dispensing machine uses the data to position the needle and dispense paste to the pads of the printed circuit board for attachment of the corresponding ball-grid array component.
Unfortunately, manually programming the paste dispensing machine to include the coordinates of each of the set of potentially hundreds of closely positioned pads is a very time consuming process. In addition, positioning the needle at the precise location corresponding to the center of each pad is tedious for the machine operator. Although moving the needle in a serpentine pattern (see FIG. 1) may reduce the tediousness of the process for the machine operator such a pattern involves frequently changing the direction of the gantry/needle which tends to jar the gantry and may reduce the machine""s life span. Moreover, each operator must undergo a long training period that may extend for as long as three to five months before being qualified to operate the machine solo. In addition, the paste dispensing machine is not useable for other purposes while the machine is being manually programmed thereby reducing the productivity of the machine.
Thus, there is a need in the art for an apparatus and method of programming a paste dispensing machine that is less time consuming, less tedious and that is less training intensive for the machine operator.